﻿using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Zocono.WCS.Domain.EntityInfo;
using Zocono.WCS.Domain.ProcessModuleDomain;
using Zocono.WCS.Infrastructure.ApllicationDto.WCSTaskDto;

namespace Zocono.WCS.Domain.GlobalClass
{
    public class GlobalResource
    {
        /// <summary>
        /// 业务配置映射
        /// </summary>
        public static List<PlanarProcessServiceMapInfo> PlanarProcessServiceMapInfos = new();

        /// <summary>
        /// plc报文协议解析映射
        /// </summary>
        public static List<BytesMapObjectInfo> BytesMapObjectInfos = new();

        /// <summary>
        /// PLC监控实时数据
        /// </summary>
        public static ConcurrentDictionary<string, List<ProcessModule>> ProcessModuleDicts = new();

        /// <summary>
        /// 防并发标识
        /// </summary>
        public static volatile int TaskTableUpdateCount = 0;

        /// <summary>
        /// 未执行的堆垛机
        /// </summary>
        public static List<WCSWorkTaskInfoDto> CurrentSCWorkTaskInfoList = new();
        
    }


}
